package com.yao.sys.entity.dto;

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yao.sys.entity.RoleEntity;

import lombok.Data;

/**
 * 角色表
 *
 * @author autoCode
 * @version 1.0.0-SNAPSHOT
 * @date 2020-04-09
 */
@Data
@TableName("sys_role")
public class RoleDto extends RoleEntity {

    /**
     * 角色-菜单关系
     */
    @TableField(exist = false)
    private String menuIds;

    public static List<RoleMenuRelDto> ofMenuIds(RoleDto dto, Integer operator) {

        return Arrays.stream(dto.getMenuIds().split(",")).map(Integer::parseInt).map(e -> {

            RoleMenuRelDto roleMenuRelDto = new RoleMenuRelDto();

            roleMenuRelDto.setRoleId(dto.getId());
            roleMenuRelDto.setMenuId(e);
            roleMenuRelDto.setOperator(operator);

            return roleMenuRelDto;
        }).collect(Collectors.toList());
    }
}